Electronic ink is electronic markings on a display device made by a user using a device, such as an electronic stylus, or even a plastic stylus or a user's finger on a pressure-sensitive surface, to give the appearance of writing on a surface of the display device. Using electronic ink, a user may appear to draw or write in a manner similar to writing with a pen on paper.
When a user lays down electronic ink, a position of the input device is sampled at a predetermined sampling rate. At each of the samplings, a point corresponding to a position of the input device at a sampling time is entered. A stroke of electronic ink includes all the points entered during sampling times while a user, using the input device, indicates input across the display.
Cusps are the “crest” points on a curve where the curve bends considerably fast. That is, the curvature at cusps is very high. For example, in FIG. 3, 300 and 302 indicate cusps along a stroke of electronic ink. Electronic ink may be rendered by displaying a chord that passes through the sampled points. The chord may be made to approximate a curve by computing a Bézier curve, usually a third order Bezier curve, that passes close to the points along the chord. Knowing the location of cusps is particularly useful in efficient computation of the Bézier fitted curve.
When using a Bézier curve to render the electronic ink through sampled points, a cusp point will be a Bézier end point, where the continuity of a tangent direction does not apply. Because electronic ink is often rendered using a Bézier fitted curve, the accurate detection of cusps dramatically improves ink rendering. The accurate detection of cusps is also useful for recognizing characters and shapes and is useful for pattern recognition. For example, a rectangle drawn in one stroke is known to have five cusps (as initial and last point of the stroke are each counted once while on the rectangle they overlap).
In the digital domain, the cusps can be detected by the difference between tangents on the successive points of the chord. If the tangents deflect by more than a threshold, a mid-point of a cusp is reported.
An estimation of the angle of deflection between two tangent angles on consecutive points is normally done by considering three sampled points which are separated by a threshold distance, to avoid noisy estimation caused by over-sampling the points. Thus, this distance depends on the resolution of the digital domain.
In electronic inking systems, sampled stroke points come from various sources with different resolution. An example of this is strokes collected using a standard mouse as a low resolution device and from a pen with a digitizer, which is a high resolution device. Typically, these points are further transformed into a different digital domain for rendering. Thus, portions of electronic ink from different sources undergo varying transformations, making it impossible for the electronic inking system to use a constant for the threshold distance mentioned above. Due to differences in resolution from one ink input device to another, what may appear as a cusp in one system may appear as noise in another system.